package lq.common.annotation;

import lq.common.validate.MobileValidator;

import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @program: cloud-study
 * @description: 自定义验证注解
 * 注解使用说明:
 * @Constraint : 自定义验证注解中使用@Constraint来处理验证逻辑,定义逻辑处理类,可以定义多个.多个用逗号分隔,多个的时候,可以根据参数类型不同,调用不同的处理类
 * @author: LQ
 * @create: 2021-02-04 11:05
 */
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = {MobileValidator.class})
public @interface IsMobile {
    String message();

    Class<?>[] groups() default {};

    Class<? extends Payload>[] payload() default {};
}
